package com.carleasoft.mps.cms.business.leave.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.carleasoft.mps.cms.business.leave.bean.entity.ReportEntity;
import com.carleasoft.mps.cms.business.leave.bean.po.AttendancePo;
import com.carleasoft.mps.cms.business.leave.bean.po.LeavePo;
import com.carleasoft.mps.cms.business.leave.bean.po.ReportPo;
import com.carleasoft.mps.cms.business.leave.bean.vo.AttendanceVo;
import com.carleasoft.mps.cms.business.leave.bean.vo.CountLeaveAndReportVo;

/**
 * @author: yangHao
 * @createDate:2023/6/3
 * @description:
 */
public interface ReportService extends IService<ReportEntity> {
    String saveReport(ReportPo reportPo);

    Page<ReportEntity> pageQueryReport(Page page, LeavePo leavePo);

    boolean deleteReport(String reportCode);

    boolean updateStatusReport(ReportEntity reportEntity);

    CountLeaveAndReportVo countLeaveAndReport();

    Page<AttendanceVo> attendance(Page page, AttendancePo attendancePo);
}
